let n = gets(1000000).trim()
let str = gets(1000000).trim()
let i = 0
let j = 0
let res = 0

function write(str) {
    let caps = false
    if(str.length === 1) {
        if(str.charCodeAt(0) < 'z'.charCodeAt(0) && str.charCodeAt(0) > 'a'.charCodeAt(0)) {
            res += 1
        }
        else {
            res += 2
        }
        return
    }
    while(i < str.length) {
        // 如果是小写 需要判断当前caps情况其后面是不是大写
        if(str.charCodeAt(i) <= 'z'.charCodeAt(0) && str.charCodeAt(i) >= 'a'.charCodeAt(0)) {
            if(caps === false) {
                res++
                i++
                j++
                continue
            }
            else {
                if(i + 1 < str.length) {
                    if(str.charCodeAt(i + 1) >= 'A'.charCodeAt(0) && str.charCodeAt(i + 1) <= 'Z'.charCodeAt(0)) {
                        res += 2
                        i++
                        j++
                    }
                    else {
                        caps = false
                        i++
                        j++
                        res += 2
                    }
                }
                else {
                    res += 2
                    i++
                    j++
                    continue
                }
            }
        }
        // 找最长的大写
        while(j < str.length && str.charCodeAt(j) >= 'A'.charCodeAt(0) && str.charCodeAt(j) <= 'Z'.charCodeAt(0)) {
            j++
        }
        // 判断连续大写的长度
        // 如果长度为1 不开启caps 使用shift 开启caps 那就+1
        if(j - i === 1) {
            caps === false ? res += 2 : res += 1
            i = j
        }
        // 否则 开启caps输入 暂时不关闭
        else if (j - i > 1) {
            res += j - i
            caps === true ? res : res += 1
            i = j
            caps = true
        }
    }
}
write(str)
print(res)
